<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>学习笔记</title>
</head>
<body>
    <!-- 
      (一)  正则：规定规则，检测字符串是否符合我们规定这个规则
        定义正则的表达式：
        var reg=/正则表达式/
        var reg=new regExp('正则表达式')
        test()用来检测字符串是否符合正则表达式的规则
        符合就返回false;
        语法：reg.test(字符串)
        例1：var reg=/\d/;
        var reg1=new Regexp('\d');
        console.log(reg1);
        例2：
        var reg=/\d/;
        var str='abcd';
        console.log(reg.test(str));
      (二)
    \d:正则表达式是数字
    \D:正则表达式是非数字
    \s:空格
    \S：不是空格
    \w:表示数字，字母，下划线
    \W:表示除了数字，字母，下划线的所有字符
     .：表示非换行的任意字符
    //以上的返回值都是布尔值
    例：
    var reg=/./;
    var str='\n';
    //\n 表示换行符
    console.log(reg.test(str));
    (三)
    限定符：限定字符的出现次数n
    *：表示前面的的字符可以出现0~正无穷次
    +：表示前面的字符至少可以出现1~正无穷次
    ?：表示前面的字符出现0~1次
    {n}：表示前面的字符连续出现n次
    {n,}:表示前面的字符至少出现n次
    {n,m}:表示前面的字符串可以出现n~m次
    例：
    var reg=/\d{3,5}/;
    var str='1re4678t';
    console.log(reg.test(str));
    (四)
    边界符：
     ^：表示以什么开头
     $:表示以什么结尾
     例：
     var reg=/^\s\d{3,9}\D$/;
     var str='232112W';
     console.log(reg.test(str));
     (五)
     正则中特殊的符号：
     在正则中想要表示出文本中的.就必须使用转义；
     \.：表示正常的.
     d:表示正常的d
     ():表示一个整体
     |：表示或的意思
     []:表示表示在括号中任意选择一个都可以
     -：表示到，指一个区间
     [^]:表示非的意思
     例：邮箱验证
     var reg=/^\d{5,12}@163\.com/;
     var str='133242@163.com';
     console.log(reg.test(str));
     (六)
     正则的方法：
     g： 在正则后面添加表示全局
     i:在正则后面添加表示不区分大小写
     test():检测字符串是否符合正则的规则
     exec()捕获字符串中满足正则规则的字符串只会捕获一次
     返回值：一个数组满足正则字符的字符和这个字符在原始字符串中索引
     var reg=/abc/gi;
     var str='hjbjlsdbvcabcpabcklABC';
     var res=reg.exec(str);
     //用res来接收捕获的结果
     直到res的值为null就表示没有满足条件的片段，就不需要往下继续捕获
     while(res){
         console.log(res);
         res=reg.exec(str)
     }
     (七)
     match(/正则表达式/g)能够自动多次匹配
     返回值：以数组的形式返回
     例：var str='njl23jhnbnk434bhlskl879dbcl';
     var res=str.match(/\d{3}/g);
     console.log(res);
  (八)
  根据正则匹配字符的索引：
  search(字符|正则表达式)根据字符或者正则表达式来判断字符串中是否存在该字符
  var str='sdjklsjldsbflsbfdnfsnjjhdkdbh'
  var res=str.replace(/(ds|fs)/,'**');
  while(res.search(/(ds|fs)/)!==-1){
      res=res.replace(/(ds|fs)/,'**')
  }
  console.log(res);
     -->

</body>
</html>